Enviado por: Carlos123
Fecha: 1075102385
Actualizado: 1077948694
¿Usa base de datos?: 0
Fecha: 1075102385
Actualizado: 1077948694
¿Usa base de datos?: 0
Visitas: 802
Votos: 1
Descargado: 17 veces
Votos: 1
Descargado: 17 veces
Lo ise por el propocito qué cuando los usuarios veían la lista de usuarios registrados salía en todos "Masculinos" y siendo que también hay mujeres... Tambien para no tener que entrar al uperfil.php para modificar tú edad, descripción, pais, sexo, sino qué ahora en el momento del registro.
He modificado él archivo [b]uregistrar.php[/b] más completo que tiene:
*Nick
*Contraseña
*Pais
Edad
Sexo
Avatar
Descripción
Crear la tablas del usuario
CREATE TABLE usuarios (
id smallint(5) unsigned NOT NULL auto_increment,
fecha int(10) unsigned NOT NULL default '0',
nick varchar(20) NOT NULL default '',
contrasena varchar(20) NOT NULL default '',
email varchar(40) NOT NULL default '',
pais varchar(20) NOT NULL default '',
edad tinyint(2) unsigned NOT NULL default '0',
sexo tinyint(1) unsigned NOT NULL default '0',
descripcion tinytext NOT NULL,
ip varchar(15) NOT NULL default '',
avatar varchar(50) NOT NULL default '',
mensajes smallint(5) unsigned NOT NULL default '0',
PRIMARY KEY (id),
KEY nick (nick,email)
)
Solo tienes que cambiar el código del [b]uregistrar.php[/b]
<?
include("config.php") ;
if($registrar) {
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
return $texto ;
}
$nick = quitar($nick) ;
$email= quitar($email) ;
$sexo= quitar($sexo) ;
$edad= quitar($edad) ;
$pais= quitar($pais) ;
$descripcion= quitar($descripcion) ;
// Comprobar que el usuario existe en la base de datos
$resp = mysql_query("select id from usuarios where nick='$nick' or email='$email'") ;
if(mysql_num_rows($resp) != 0) {
echo "<font size=2 face=Verdana, Arial, Helvetica, sans-serif>Ya existe un usuario con ese
nick o email en la base de datos. Haz click <a href=javascript:history.back()>aquí</a>
para regresar.</font>" ;
}
else {
$fecha = time() ;
$contrasena = quitar($contrasena) ;
$ip = $REMOTE_ADDR ;
mysql_query("insert into usuarios (fecha,nick,contrasena,email,ip,avatar,sexo,edad,descripcion,pais)
values ('$fecha','$nick','$contrasena','$email','$ip','$avatar','$sexo','$edad','$descripcion','$pais')") ;
echo "<font size=2 face=Verdana, Arial, Helvetica, sans-serif>Has sido registrado con éxito. Haz click <a href=index.php>aquí</a> para ir a la página principal.</font>" ;
}
}
else {
?>
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Los
datos marcados con un asterisco (*) son obligatorios.</font>
<script>
function revisar() {
if(formulario.nick.value.length < 3) { alert('El nick debe contener por lo mínimo 3 caractéres') ; return false ; }
if(formulario.contrasena.value.length < 5) { alert('La contraseña debe contener por lo mínimo 5 caractéres') ; return false ; }
if(formulario.email.value.length == 0) { alert('Debes poner un email válido') ; return false ; }
if(formulario.pais.value.length == 0) { alert('Debes poner un país') ; return false ; }
if(formulario.avatar.value.length == 0) { alert('Debes poner un avatar') ; return false ; }
if(formulario.descripcion.value.length > 255) { alert('La descripción supera los 255 caractéres.') ; return false ; }
}
</script>
<SCRIPT type="text/javascript">
<!--
function showimage() {
if (!document.images)
return
document.images.avatar.src=
'avatares/' + document.formulario.avatar.options[document.formulario.avatar.selectedIndex].value
}
//-->
</SCRIPT>
<form name="formulario" method="post" action="modulos.php?id=uregistrar" onsubmit="return revisar()">
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">*
Nick:</font></b><br>
<input type="text" name="nick" maxlength="20" class="form" >
<br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">*
Contraseña:</font></b><br>
<input type="password" name="contrasena" maxlength="20" class="form"><br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">*
Email:</font></b><br>
<input type="text" name="email" maxlength="40" class="form" >
<br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">*Pais:</font></b><br>
<input type=text name=pais maxlength=20 class=form>
<br>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1"><b>Edad:</b></font><br>
<input type=text name=edad maxlength=2 size=10 class=form>
<br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Sexo:</font></b><br>
<select name=sexo class=form>
<option value=0>Masculino
<option value=1$sexo>Femenino
</select>
<br>
<br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">*
Avatar:</font></b><br>
<select name="avatar" onChange="showimage()" class="form" >
<option value="defecto.gif" selected>defecto.gif</option>
<option value="1.gif">1.gif</option>
<option value="2.gif">2.gif</option>
<option value="3.gif">3.gif</option>
<option value="4.gif">4.gif</option>
<option value="5.gif">5.gif</option>
<option value="6.gif">6.gif</option>
<option value="7.gif">7.gif</option>
<option value="8.gif">8.gif</option>
<option value="9.gif">9.gif</option>
<option value="10.gif">10.gif</option>
<option value="11.gif">11.gif</option>
<option value="12.gif">12.gif</option>
<option value="13.gif">13.gif</option>
<option value="14.gif">14.gif</option>
<option value="15.gif">15.gif</option>
<option value="16.gif">16.gif</option>
<option value="17.gif">17.gif</option>
<option value="18.gif">18.gif</option>
<option value="19.gif">19.gif</option>
<option value="20.gif">20.gif</option>
<option value="21.gif">21.gif</option>
<option value="22.gif">22.gif</option>
<option value="23.gif">23.gif</option>
<option value="24.gif">24.gif</option>
<option value="25.gif">25.gif</option>
<option value="26.gif">26.gif</option>
<option value="27.gif">27.gif</option>
<option value="28.gif">28.gif</option>
<option value="29.gif">29.gif</option>
<option value="30.gif">30.gif</option>
<option value="31.gif">31.gif</option>
<option value="32.gif">32.gif</option>
<option value="33.gif">33.gif</option>
<option value="34.gif">34.gif</option>
</select>
<br>
<br>
<img src="avatares/defecto.gif" alt="" name="avatar">
<br>
<b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Descripción</font></b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1">:</font><br>
<textarea name=descripcion cols=30 rows=5 class=form style=\"font-family: verdana\"></textarea>
<br>
<br>
<input type="submit" name="registrar" value="Registrar" class="form">
</form>
<?
}
mysql_close($conectar) ;
?>
[b]Uperfil.php[/b]
<?
include("config.php") ;
$usuario = $_COOKIE["unick"] ;
$resp = mysql_query("select * from usuarios where nick='$usuario'") ;
$datos = mysql_fetch_array($resp) ;
if($editarconfirmacion) {
echo "Tus datos han sido editados con éxito. Haz click <a href=index.php>aquí</a> para regresar a la página principal.<br><br>" ;
}
// Si el campo de la edad es cero evitaremos que se muestre la edad
if($datos[edad] == 0) { $edad = "" ; }
else { $edad = $datos[edad] ; }
// Se guarda el sexo con los valores 0 y 1 que es masculino y femenino respectivamente
// Si el usuario seleccionó femenino (1), al momento de editar debe aparecer seleccionado
if($datos[sexo] == 1) { $sexo = " selected" ; }
// Mostrar la fecha en texto
$fecha = $datos[fecha] ;
$diassemana = array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado") ;
$mesesano = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre") ;
$diasemana = date(w,$fecha) ; $diames = date(j,$fecha) ; $mesano = date(n,$fecha) - 1 ; $ano = date(Y,$fecha) ;
$fecha = "$diassemana[$diasemana] $diames de $mesesano[$mesano] del $ano" ;
//avatar Si el campo es cero evitaremos que se muestre la edad
if($datos[avatar] == 0 ) { $avatar = "defecto.gif" ; }
else { $avatar = $datos[avatar] ; }
//avatar mostralo en el texto
if($datos[avatar] == 1 ) { $avatar = "1.gif" ; }
echo "
<p class=titulo>Perfil
<p><b>Usuario desde el:</b> $fecha
<p>En esta sección puedes editar tus datos de registro. Los campos con un asterisco (*) son obligatorios.
<script>
function revisar() {
if(formulario.nick.value.length < 3) { alert('El nick debe contener por lo mínimo 3 caractéres.') ; return false ; }
if(formulario.pass.value.length < 5) { alert('La contraseña debe contener por lo mínimo 5 caractéres.') ; return false ; }
if(formulario.email.value.length == 0) { alert('Debes poner un email válido.') ; return false ; }
if(formulario.descripcion.value.length > 255) { alert('La descripción supera los 255 caractéres.') ; return false ; }
}
</script>
<SCRIPT>
<!--
function showimage() {
if (!document.images)
return
document.images.avatar.src=
'avatares/' + document.formulario.avatar.options[document.formulario.avatar.selectedIndex].value
}
//-->
</SCRIPT>
<form method=post name=formulario action=ueditar.php>
<b>* Nick:</b><br>
<input type=text name=nick maxlength=20 value=\"$datos[nick]\" class=form><br>
<b>* contraseña:</b><br>
<input type=password name=contrasena maxlength=20 value=\"$datos[contrasena]\" class=form><br>
<b>* Email:</b><br>
<input type=text name=email maxlength=20 value=\"$datos[email]\" class=form><br>
<b>Pais:</b><br>
<input type=text name=pais maxlength=20 value=\"$datos[pais]\" class=form><br>
<b>Edad:</b><br>
<input type=text name=edad maxlength=2 size=3 value=\"$edad\" class=form><br>
<b>Sexo:</b><br>
<select name=sexo class=form>
<option value=0>Masculino
<option value=1$sexo>Femenino
</select><br>
<b>Descripción:</b><br>
<textarea name=descripcion cols=30 rows=5 class=form style=\"font-family: verdana\">$datos[descripcion]</textarea>
<br>
<b>Avatar</b><br>
<select name=\"avatar\" onChange=\"showimage()\" class=\"form\" >
<option value=\"$avatar\" selected>$avatar</option>
<option value=\"1.gif\">1.gif</option>
<option value=\"2.gif\">2.gif</option>
<option value=\"3.gif\">3.gif</option>
<option value=\"4.gif\">4.gif</option>
<option value=\"5.gif\">5.gif</option>
<option value=\"6.gif\">6.gif</option>
<option value=\"7.gif\">7.gif</option>
<option value=\"8.gif\">8.gif</option>
<option value=\"9.gif\">9.gif</option>
<option value=\"10.gif\">10.gif</option>
<option value=\"11.gif\">11.gif</option>
<option value=\"12.gif\">12.gif</option>
<option value=\"13.gif\">13.gif</option>
<option value=\"14.gif\">14.gif</option>
<option value=\"15.gif\">15.gif</option>
<option value=\"16.gif\">16.gif</option>
<option value=\"17.gif\">17.gif</option>
<option value=\"18.gif\">18.gif</option>
<option value=\"19.gif\">19.gif</option>
<option value=\"20.gif\">20.gif</option>
<option value=\"21.gif\">21.gif</option>
<option value=\"22.gif\">22.gif</option>
<option value=\"23.gif\">23.gif</option>
<option value=\"24.gif\">24.gif</option>
<option value=\"25.gif\">25.gif</option>
<option value=\"26.gif\">26.gif</option>
<option value=\"27.gif\">27.gif</option>
<option value=\"28.gif\">28.gif</option>
<option value=\"29.gif\">29.gif</option>
<option value=\"30.gif\">30.gif</option>
<option value=\"31.gif\">31.gif</option>
<option value=\"32.gif\">32.gif</option>
<option value=\"33.gif\">33.gif</option>
<option value=\"34.gif\">34.gif</option>
</select>
<br>
<br>
<img src=\"avatares/$avatar\" name=\"avatar\" alt=\"\"> <br>
<br>
<input type=\"submit\" name=\"editar\" value=\"Editar\" class=\"form\">
</form>
" ;
mysql_free_result($resp) ;
mysql_close($conectar) ;
?>
[b]ueditar.php[/b]
<?
include("config.php") ;
$usuario = $_COOKIE["unick"] ;
if($editar) {
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
return $texto ;
}
$nick = quitar($nick) ;
$contrasena = quitar($contrasena) ;
$email = quitar($email) ;
$pais = quitar($pais) ;
$edad = quitar($edad) ;
$avatar = quitar($avatar) ;
$descripcion = quitar($descripcion) ;
mysql_query("update usuarios set nick='$nick',contrasena='$contrasena',email='$email',pais='$pais',edad='$edad',
sexo='$sexo',descripcion='$descripcion',avatar='$avatar' where nick='$usuario'") ;
setcookie("unick",$nick,time()+7776000) ;
header("location: modulos.php?id=uperfil&editarconfirmacion=si") ;
}
mysql_close($conectar) ;
?>
En el .zip están los avatares, uregistrar.php, uperfil.php y ueditar.php
Espero que sea útil.